package org.admanager.acmepattern.plugin.diagram.part;

import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

import org.admanager.acmeadmanagement.plugin.acmeadmanagement.AcmeadmanagementPackage;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.CBAPattern;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PComponent;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PComponentPort;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConnector;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConnectorRole;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConstraint;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PElement;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PMultiplicity;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PRole;
import org.admanager.acmepattern.plugin.diagram.edit.parts.CBAPatternEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PComponent2EditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PComponentComponentCompartment2EditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PComponentComponentCompartmentEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PComponentEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PComponentPort2EditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PComponentPortAttachedRoleEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PComponentPortDelegatedPortsEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PComponentPortEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PConnector2EditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PConnectorConnectorCompartment2EditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PConnectorConnectorCompartmentEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PConnectorEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PConnectorRole2EditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PConnectorRoleDelegatedRolesEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PConnectorRoleEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PConstraintEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PElementMultiplicityEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PElementRolesEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PMultiplicityEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PRoleEditPart;
import org.admanager.acmepattern.plugin.diagram.edit.parts.PRoleRoleCompartmentEditPart;
import org.admanager.acmepattern.plugin.diagram.providers.AcmeADManagementMetamodelElementTypes;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.gmf.runtime.notation.View;

/**
 * @generated
 */
public class AcmeADManagementMetamodelDiagramUpdater {

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/getSemanticChildren(
			View view) {
		switch (AcmeADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case CBAPatternEditPart.VISUAL_ID:
			return getCBAPattern_1000SemanticChildren(view);
		case PComponentComponentCompartmentEditPart.VISUAL_ID:
			return getPComponentComponentCompartment_7006SemanticChildren(view);
		case PComponentComponentCompartment2EditPart.VISUAL_ID:
			return getPComponentComponentCompartment_7007SemanticChildren(view);
		case PConnectorConnectorCompartmentEditPart.VISUAL_ID:
			return getPConnectorConnectorCompartment_7008SemanticChildren(view);
		case PConnectorConnectorCompartment2EditPart.VISUAL_ID:
			return getPConnectorConnectorCompartment_7009SemanticChildren(view);
		case PRoleRoleCompartmentEditPart.VISUAL_ID:
			return getPRoleRoleCompartment_7010SemanticChildren(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/getCBAPattern_1000SemanticChildren(
			View view) {
		if (!view.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		CBAPattern modelElement = (CBAPattern) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getElements().iterator(); it
				.hasNext();) {
			PElement childElement = (PElement) it.next();
			int visualID = AcmeADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PComponentEditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PComponentPortEditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PConnectorEditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PConnectorRoleEditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getMultiplicities().iterator(); it
				.hasNext();) {
			PMultiplicity childElement = (PMultiplicity) it.next();
			int visualID = AcmeADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PMultiplicityEditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getContainingRoles().iterator(); it
				.hasNext();) {
			PRole childElement = (PRole) it.next();
			int visualID = AcmeADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PRoleEditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/getPComponentComponentCompartment_7006SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		PComponent modelElement = (PComponent) containerView.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			PElement childElement = (PElement) it.next();
			int visualID = AcmeADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PComponent2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PComponentPort2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PConnector2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/getPComponentComponentCompartment_7007SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		PComponent modelElement = (PComponent) containerView.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			PElement childElement = (PElement) it.next();
			int visualID = AcmeADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PComponent2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PComponentPort2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PConnector2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/getPConnectorConnectorCompartment_7008SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		PConnector modelElement = (PConnector) containerView.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			PElement childElement = (PElement) it.next();
			int visualID = AcmeADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PConnectorRole2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PComponent2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PConnector2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/getPConnectorConnectorCompartment_7009SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		PConnector modelElement = (PConnector) containerView.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			PElement childElement = (PElement) it.next();
			int visualID = AcmeADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PConnectorRole2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PComponent2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == PConnector2EditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/getPRoleRoleCompartment_7010SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		PRole modelElement = (PRole) containerView.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInvariants().iterator(); it
				.hasNext();) {
			PConstraint childElement = (PConstraint) it.next();
			int visualID = AcmeADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PConstraintEditPart.VISUAL_ID) {
				result.add(new AcmeADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getContainedLinks(
			View view) {
		switch (AcmeADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case CBAPatternEditPart.VISUAL_ID:
			return getCBAPattern_1000ContainedLinks(view);
		case PComponentEditPart.VISUAL_ID:
			return getPComponent_2007ContainedLinks(view);
		case PComponentPortEditPart.VISUAL_ID:
			return getPComponentPort_2008ContainedLinks(view);
		case PConnectorEditPart.VISUAL_ID:
			return getPConnector_2009ContainedLinks(view);
		case PConnectorRoleEditPart.VISUAL_ID:
			return getPConnectorRole_2010ContainedLinks(view);
		case PMultiplicityEditPart.VISUAL_ID:
			return getPMultiplicity_2011ContainedLinks(view);
		case PRoleEditPart.VISUAL_ID:
			return getPRole_2012ContainedLinks(view);
		case PComponent2EditPart.VISUAL_ID:
			return getPComponent_3006ContainedLinks(view);
		case PComponentPort2EditPart.VISUAL_ID:
			return getPComponentPort_3007ContainedLinks(view);
		case PConnector2EditPart.VISUAL_ID:
			return getPConnector_3008ContainedLinks(view);
		case PConnectorRole2EditPart.VISUAL_ID:
			return getPConnectorRole_3009ContainedLinks(view);
		case PConstraintEditPart.VISUAL_ID:
			return getPConstraint_3010ContainedLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getIncomingLinks(
			View view) {
		switch (AcmeADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case PComponentEditPart.VISUAL_ID:
			return getPComponent_2007IncomingLinks(view);
		case PComponentPortEditPart.VISUAL_ID:
			return getPComponentPort_2008IncomingLinks(view);
		case PConnectorEditPart.VISUAL_ID:
			return getPConnector_2009IncomingLinks(view);
		case PConnectorRoleEditPart.VISUAL_ID:
			return getPConnectorRole_2010IncomingLinks(view);
		case PMultiplicityEditPart.VISUAL_ID:
			return getPMultiplicity_2011IncomingLinks(view);
		case PRoleEditPart.VISUAL_ID:
			return getPRole_2012IncomingLinks(view);
		case PComponent2EditPart.VISUAL_ID:
			return getPComponent_3006IncomingLinks(view);
		case PComponentPort2EditPart.VISUAL_ID:
			return getPComponentPort_3007IncomingLinks(view);
		case PConnector2EditPart.VISUAL_ID:
			return getPConnector_3008IncomingLinks(view);
		case PConnectorRole2EditPart.VISUAL_ID:
			return getPConnectorRole_3009IncomingLinks(view);
		case PConstraintEditPart.VISUAL_ID:
			return getPConstraint_3010IncomingLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getOutgoingLinks(
			View view) {
		switch (AcmeADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case PComponentEditPart.VISUAL_ID:
			return getPComponent_2007OutgoingLinks(view);
		case PComponentPortEditPart.VISUAL_ID:
			return getPComponentPort_2008OutgoingLinks(view);
		case PConnectorEditPart.VISUAL_ID:
			return getPConnector_2009OutgoingLinks(view);
		case PConnectorRoleEditPart.VISUAL_ID:
			return getPConnectorRole_2010OutgoingLinks(view);
		case PMultiplicityEditPart.VISUAL_ID:
			return getPMultiplicity_2011OutgoingLinks(view);
		case PRoleEditPart.VISUAL_ID:
			return getPRole_2012OutgoingLinks(view);
		case PComponent2EditPart.VISUAL_ID:
			return getPComponent_3006OutgoingLinks(view);
		case PComponentPort2EditPart.VISUAL_ID:
			return getPComponentPort_3007OutgoingLinks(view);
		case PConnector2EditPart.VISUAL_ID:
			return getPConnector_3008OutgoingLinks(view);
		case PConnectorRole2EditPart.VISUAL_ID:
			return getPConnectorRole_3009OutgoingLinks(view);
		case PConstraintEditPart.VISUAL_ID:
			return getPConstraint_3010OutgoingLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getCBAPattern_1000ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponent_2007ContainedLinks(
			View view) {
		PComponent modelElement = (PComponent) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponentPort_2008ContainedLinks(
			View view) {
		PComponentPort modelElement = (PComponentPort) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentPort_DelegatedPorts_4008(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentPort_AttachedRole_4009(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnector_2009ContainedLinks(
			View view) {
		PConnector modelElement = (PConnector) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnectorRole_2010ContainedLinks(
			View view) {
		PConnectorRole modelElement = (PConnectorRole) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PConnectorRole_DelegatedRoles_4010(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPMultiplicity_2011ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPRole_2012ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponent_3006ContainedLinks(
			View view) {
		PComponent modelElement = (PComponent) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponentPort_3007ContainedLinks(
			View view) {
		PComponentPort modelElement = (PComponentPort) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentPort_DelegatedPorts_4008(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentPort_AttachedRole_4009(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnector_3008ContainedLinks(
			View view) {
		PConnector modelElement = (PConnector) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnectorRole_3009ContainedLinks(
			View view) {
		PConnectorRole modelElement = (PConnectorRole) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PConnectorRole_DelegatedRoles_4010(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConstraint_3010ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponent_2007IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponentPort_2008IncomingLinks(
			View view) {
		PComponentPort modelElement = (PComponentPort) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PComponentPort_DelegatedPorts_4008(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnector_2009IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnectorRole_2010IncomingLinks(
			View view) {
		PConnectorRole modelElement = (PConnectorRole) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PComponentPort_AttachedRole_4009(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_PConnectorRole_DelegatedRoles_4010(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPMultiplicity_2011IncomingLinks(
			View view) {
		PMultiplicity modelElement = (PMultiplicity) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PElement_Multiplicity_4007(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPRole_2012IncomingLinks(
			View view) {
		PRole modelElement = (PRole) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PElement_Roles_4006(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponent_3006IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponentPort_3007IncomingLinks(
			View view) {
		PComponentPort modelElement = (PComponentPort) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PComponentPort_DelegatedPorts_4008(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnector_3008IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnectorRole_3009IncomingLinks(
			View view) {
		PConnectorRole modelElement = (PConnectorRole) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_PComponentPort_AttachedRole_4009(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_PConnectorRole_DelegatedRoles_4010(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConstraint_3010IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponent_2007OutgoingLinks(
			View view) {
		PComponent modelElement = (PComponent) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponentPort_2008OutgoingLinks(
			View view) {
		PComponentPort modelElement = (PComponentPort) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentPort_DelegatedPorts_4008(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentPort_AttachedRole_4009(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnector_2009OutgoingLinks(
			View view) {
		PConnector modelElement = (PConnector) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnectorRole_2010OutgoingLinks(
			View view) {
		PConnectorRole modelElement = (PConnectorRole) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PConnectorRole_DelegatedRoles_4010(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPMultiplicity_2011OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPRole_2012OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponent_3006OutgoingLinks(
			View view) {
		PComponent modelElement = (PComponent) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPComponentPort_3007OutgoingLinks(
			View view) {
		PComponentPort modelElement = (PComponentPort) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentPort_DelegatedPorts_4008(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PComponentPort_AttachedRole_4009(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnector_3008OutgoingLinks(
			View view) {
		PConnector modelElement = (PConnector) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConnectorRole_3009OutgoingLinks(
			View view) {
		PConnectorRole modelElement = (PConnectorRole) view.getElement();
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_PConnectorRole_DelegatedRoles_4010(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getPConstraint_3010OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PElement_Roles_4006(
			PRole target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == AcmeadmanagementPackage.eINSTANCE
					.getPElement_Roles()) {
				result.add(new AcmeADManagementMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						AcmeADManagementMetamodelElementTypes.PElementRoles_4006,
						PElementRolesEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PElement_Multiplicity_4007(
			PMultiplicity target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == AcmeadmanagementPackage.eINSTANCE
					.getPElement_Multiplicity()) {
				result.add(new AcmeADManagementMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						AcmeADManagementMetamodelElementTypes.PElementMultiplicity_4007,
						PElementMultiplicityEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PComponentPort_DelegatedPorts_4008(
			PComponentPort target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == AcmeadmanagementPackage.eINSTANCE
					.getPComponentPort_DelegatedPorts()) {
				result.add(new AcmeADManagementMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						AcmeADManagementMetamodelElementTypes.PComponentPortDelegatedPorts_4008,
						PComponentPortDelegatedPortsEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PComponentPort_AttachedRole_4009(
			PConnectorRole target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == AcmeadmanagementPackage.eINSTANCE
					.getPComponentPort_AttachedRole()) {
				result.add(new AcmeADManagementMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						AcmeADManagementMetamodelElementTypes.PComponentPortAttachedRole_4009,
						PComponentPortAttachedRoleEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_PConnectorRole_DelegatedRoles_4010(
			PConnectorRole target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == AcmeadmanagementPackage.eINSTANCE
					.getPConnectorRole_DelegatedRoles()) {
				result.add(new AcmeADManagementMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						AcmeADManagementMetamodelElementTypes.PConnectorRoleDelegatedRoles_4010,
						PConnectorRoleDelegatedRolesEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PElement_Roles_4006(
			PElement source) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/destinations = source.getRoles().iterator(); destinations
				.hasNext();) {
			PRole destination = (PRole) destinations.next();
			result.add(new AcmeADManagementMetamodelLinkDescriptor(source,
					destination,
					AcmeADManagementMetamodelElementTypes.PElementRoles_4006,
					PElementRolesEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PElement_Multiplicity_4007(
			PElement source) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		PMultiplicity destination = source.getMultiplicity();
		if (destination == null) {
			return result;
		}
		result.add(new AcmeADManagementMetamodelLinkDescriptor(
				source,
				destination,
				AcmeADManagementMetamodelElementTypes.PElementMultiplicity_4007,
				PElementMultiplicityEditPart.VISUAL_ID));
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PComponentPort_DelegatedPorts_4008(
			PComponentPort source) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/destinations = source.getDelegatedPorts()
				.iterator(); destinations.hasNext();) {
			PComponentPort destination = (PComponentPort) destinations.next();
			result.add(new AcmeADManagementMetamodelLinkDescriptor(
					source,
					destination,
					AcmeADManagementMetamodelElementTypes.PComponentPortDelegatedPorts_4008,
					PComponentPortDelegatedPortsEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PComponentPort_AttachedRole_4009(
			PComponentPort source) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		PConnectorRole destination = source.getAttachedRole();
		if (destination == null) {
			return result;
		}
		result.add(new AcmeADManagementMetamodelLinkDescriptor(
				source,
				destination,
				AcmeADManagementMetamodelElementTypes.PComponentPortAttachedRole_4009,
				PComponentPortAttachedRoleEditPart.VISUAL_ID));
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_PConnectorRole_DelegatedRoles_4010(
			PConnectorRole source) {
		LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.acmepattern.plugin.diagram.part.AcmeADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/destinations = source.getDelegatedRoles()
				.iterator(); destinations.hasNext();) {
			PConnectorRole destination = (PConnectorRole) destinations.next();
			result.add(new AcmeADManagementMetamodelLinkDescriptor(
					source,
					destination,
					AcmeADManagementMetamodelElementTypes.PConnectorRoleDelegatedRoles_4010,
					PConnectorRoleDelegatedRolesEditPart.VISUAL_ID));
		}
		return result;
	}

}
